import CryptoJS from 'crypto-js'
const aesConfig = {
    secret: '622542c04edaee86',
    iv: '11dfe94cc210acec'
}
export function encrypt(msg){
    msg = typeof(msg) == 'string' ? msg : JSON.stringify(msg)
    return CryptoJS.AES.encrypt(msg,CryptoJS.enc.Utf8.parse(aesConfig.secret),{
        iv: CryptoJS.enc.Utf8.parse(aesConfig.iv),
        mode: CryptoJS.mode.CBC,
        padding: CryptoJS.pad.Pkcs7
    }).toString()
}

export function decrypt(msg){
    if(msg){
        msg = CryptoJS.AES.decrypt(msg,CryptoJS.enc.Utf8.parse(aesConfig.secret),{
            iv: CryptoJS.enc.Utf8.parse(aesConfig.iv),
            mode: CryptoJS.mode.CBC,
            padding: CryptoJS.pad.Pkcs7
        }).toString(CryptoJS.enc.Utf8)
        if(msg == '{}' || msg == '[]') return null
    }else{
        return null
    }
    var isJSON = new RegExp(/^({|\[)(.*)(}|\])$/).test(msg)
    return isJSON ? JSON.parse(msg) : msg
}
